Improvements in engine performance, efficiency, and decrease in emissions have required increasingly accurate monitoring and control of the engine combustion process. Moreover, optimization of the process changes as operating conditions change. Such conditions include engine rpm, applied load, temperature, humidity, etc. A key piece of data in the optimization of engine performance is the position of the particular cylinder piston as the engine operates. Previous efforts to determine the piston position have used indirect measurement of the position of the piston by measuring various engine elements mechanically connected thereto, such as flywheel position and ignition timing. However, in view of the variations in tolerances of the connecting members between the piston and the flywheel or ignition timing element, and the mechanical distortions to the connecting members due to a variation in loading torque, the resulting errors in measurement of the top or bottom of the piston excursion, are unacceptable for optimal engine operation.